package co.edu.usbcali.sgi.modelo.dto;

import co.edu.usbcali.sgi.modelo.Ciudad;
import co.edu.usbcali.sgi.presentation.backEndBeans.CiudadView;

import java.io.Serializable;

import java.util.Date;

import javax.faces.event.ActionEvent;


public class CiudadDTO implements Serializable {
    private static final long serialVersionUID = 1L;
    private String ciuNombre;
    private String estCod_Estado;
    private String paiCod_Pais;
    private String ciuCod;
    private boolean rowSelected = false;
    private CiudadView ciudadView;
    private Ciudad ciudad;

    public Ciudad getCiudad() {
        return ciudad;
    }

    public String listener_update(ActionEvent e) {
        try {
            ciudadView.action_modifyWitDTO(( ciuNombre.equals("")) ? null
                                                              : new String(
                    ciuNombre),
                ((estCod_Estado == null) || estCod_Estado.equals("")) ? null
                                                                      : new String(
                    estCod_Estado),
                ((paiCod_Pais == null) || paiCod_Pais.equals("")) ? null
                                                                  : new String(
                    paiCod_Pais));
            rowSelected = !rowSelected;
        } catch (Exception ex) {
            return "";
        }

        return "";
    }

    public void listener_cancel(ActionEvent e) {
        ciuCod = ciudad.getCiuCod().toString();
        ciuNombre = (ciudad.getCiuNombre() != null)
            ? ciudad.getCiuNombre().toString() : null;
        estCod_Estado = (ciudad.getEstado().getEstCod() != null)
            ? ciudad.getEstado().getEstCod().toString() : null;
        paiCod_Pais = (ciudad.getPais().getPaiCod() != null)
            ? ciudad.getPais().getPaiCod().toString() : null;
        rowSelected = !rowSelected;
    }

    /**
    * <p>Bound to commandLink actionListener in the ui that renders/unrenders
        * the Customer details for editing.</p>
        */
    public void toggleSelected(ActionEvent e) {
        ciuCod = ciudad.getCiuCod().toString();
        ciuNombre = (ciudad.getCiuNombre() != null)
            ? ciudad.getCiuNombre().toString() : null;
        estCod_Estado = (ciudad.getEstado().getEstCod() != null)
            ? ciudad.getEstado().getEstCod().toString() : null;
        paiCod_Pais = (ciudad.getPais().getPaiCod() != null)
            ? ciudad.getPais().getPaiCod().toString() : null;
        rowSelected = !rowSelected;
    }

    public void setCiudad(Ciudad ciudad) {
        this.ciudad = ciudad;
    }

    public CiudadView getCiudadView() {
        return ciudadView;
    }

    public void setCiudadView(CiudadView ciudadView) {
        this.ciudadView = ciudadView;
    }

    public String getCiuNombre() {
        return ciuNombre;
    }

    public void setCiuNombre(String ciuNombre) {
        this.ciuNombre = ciuNombre;
    }

    public String getEstCod_Estado() {
        return estCod_Estado;
    }

    public void setEstCod_Estado(String estCod_Estado) {
        this.estCod_Estado = estCod_Estado;
    }

    public String getPaiCod_Pais() {
        return paiCod_Pais;
    }

    public void setPaiCod_Pais(String paiCod_Pais) {
        this.paiCod_Pais = paiCod_Pais;
    }

    public String getCiuCod() {
        return ciuCod;
    }

    public void setCiuCod(String ciuCod) {
        this.ciuCod = ciuCod;
    }

    public boolean isRowSelected() {
        return rowSelected;
    }

    public void setRowSelected(boolean rowSelected) {
        this.rowSelected = rowSelected;
    }
}
